#include <stdio.h>
int ungetc(c, stream);
int c; возвращаемый символ
FILE *stream; указатель на структуру типа FILE
Описание.
Функция ungetc возвращает символ "c" в заданный поток ввода stream. Stream должен быть буферизованным и открытым для чтения. Последующая операция чтения из stream начинается с символа "c". EOF вернуть в поток посредством использования ungetc нельзя. Эта функция возвращает значение ошибки, если из stream ничего не прочитано или если "c" назад не возвращен. Символы, размещаемые в потоке посредством ungetc, могут быть уничтожены, если функции fseek или rewind вызваны перед считыванием символа из stream.
Возвращаемое значение.
Эта функция возвращает аргумент символа "c". Возвращаемое значение EOF свидетельствует о неудачном возвращении заданного символа.
Пример:
#inc <stdio.h>
#include <ctype.h>
FILE *stream;
int ch;
int result = 0;
.
.
.
/* следующие операторы выбирают десятичное целое из потока
stream */
while ((ch = getc(stream)) != EOF && isdigit(ch))
result = result * 10 + ch - '0';
if (ch != EOF)
ungetc(ch, stream);
/* возвращает назад не десятичное целое. */